home *** CD-ROM | disk | FTP | other *** search
/ NeXT Education Software Sampler 1992 Fall / NeXT Education Software Sampler 1992 Fall.iso / SoundAndMusic / cmix / lib / brrand.c < prev    next >
Text File  |  1989-02-25  |  351b  |  22 lines

  1.  
  2. /* block version of rrand */
  3. /* a modification of unix rand() to return floating point values between
  4.    + and - 1. */
  5.  
  6. static    long    randx = 1;
  7.  
  8. sbrrand(x)
  9. unsigned x;
  10. {
  11.     randx = x;
  12. }
  13. brrand(amp,a,j)
  14. float amp,*a;
  15. {
  16.     int k;
  17.     for(k=0; k<j; k++) {
  18.         int i = ((randx = randx*1103515245 + 12345)>>16) & 077777;
  19.         *a++ = amp * ((float)i/16384. - 1.);
  20.     }
  21. }
  22.